﻿/*
 * Carga los datos desde el XML "smit_ley_num" a Base de Datos SQLite
 */

function cargarLeyNum() {
	// Cargar tabla smit_ley_num
	$.get("../data/smit_base/smit_ley_num.xml", function (xml) {
		$(xml).find("row").each(function () {
			cod_numeral 			= $(this).find('cod_numeral').text();
			cod_articulo 			= $(this).find('cod_articulo').text();
			ut 						= $(this).find('ut').text();
			descripcion_n 			= $(this).find('descripcion_n').text();

			insertarLeyNumXML(cod_numeral, cod_articulo, ut, descripcion_n);
		});
	});
}


/*
 * Insertar los Datos de los Numerales de la Ley de Transporte Terrestre desde un XML
 */

function insertarLeyNumXML(cod_numeral, cod_articulo, ut, descripcion_n) {
	db.transaction(function(tx) {
		tx.executeSql('INSERT INTO smit_ley_num (cod_numeral, cod_articulo, ut, descripcion_n) VALUES (?, ?, ?, ?)', [cod_numeral, cod_articulo, ut, descripcion_n]);
	});
}


/*
 * Consultar los Datos de los Numerales de la Ley de Transporte Terrestre
 */

function consultarLeyNum() {
	db.transaction(function(tx) {
		tx.executeSql('SELECT * FROM smit_ley_num', []);
	});
}


/*
 * Consultar los Datos de los Numerales de la Ley de Transporte Terrestre para el Combo
 */

function consultarComboLeyNum( cod_articulo ) {
	db.transaction(function(tx) {
		tx.executeSql('SELECT * FROM smit_ley_num WHERE cod_articulo = ?', [cod_articulo], resConsultarComboLeyNum);
	});
}


/*
 * Respuesta a Consultar los Datos de los Numerales de la Ley de Transporte Terrestre para el Combo
 */

function resConsultarComboLeyNum(tx, rs) {
	for(var i=0; i < rs.rows.length; i++) {
		r = rs.rows.item(i);
		$('#cod_numeral').append($("<option></option>").attr("value",r['cod_numeral']).text(r['descripcion_n']));
	}
}


/*
 * Consultar el Nombre de un Numeral de la Ley de Transporte Terrestre
 */

function consultarNombreLeyNum( cod_numeral ) {
    db.transaction(function(tx) {
        tx.executeSql('SELECT descripcion_n FROM smit_ley_num WHERE cod_numeral = ?', [cod_numeral], resConsultarNombreLeyNum);
    });
}


/*
 * Respuesta a Consultar el Nombre de un Numeral de la Ley de Transporte Terrestre
 */

function resConsultarNombreLeyNum(tx, rs) {
    r = rs.rows.item(0);
    $('#descripcion_ley_num').val(r['descripcion_n']);
}


/*
 * Consultar la Información de una Infracción de la Ley de Transporte Terrestre por Numeral
 */

function consultarInfoInfraLeyNum( cod_articulo, cod_numeral ) {
    db.transaction(function(tx) {
        tx.executeSql('SELECT cod_articulo as cod_articulo, cod_numeral as cod_numeral, descripcion_n as descripcion_n, ut as ut FROM smit_ley_num WHERE cod_articulo = ? AND cod_numeral = ?', [cod_articulo, cod_numeral], resConsultarInfoInfraLeyNum);
    });
}


/*
 * Respuesta a Consultar la Información de una Infracción de la Ley de Transporte Terrestre por Numeral
 */

function resConsultarInfoInfraLeyNum(tx, rs) {
    
	if ( rs.rows.length  == 0 ) 
	{
		navigator.notification.alert("ATENCIÓN: No se encontró una Infracción con los parámetros seleccionados.", null, acronimo_sistema, "Aceptar");
		$('#id_articulo_c').focus();
	}
	else 
	{
		r = rs.rows.item(0);
		info_infra[2] 	= r['cod_numeral'];		// ID Numeral
		info_infra[3] 	= r['descripcion_n'];	// Descripcion del Numeral
		info_infra[4] 	= "-";					// ID Literal
		info_infra[5] 	= "-";					// Descripcion del Literal
		if ( r['ut'] != "" ) {
			info_infra[6] = r['ut'];			// UT para Base de Datos
			info_infra[7] 	= "";				// UT para Texto (Se utiliza para mensajes y tablas)
		}
		info_infra[10] 	= "LEY";				// Oficio Juridico para Texto (Se utiliza para mensajes y tablas)
		info_infra[11] 	= "LEY_INTT_NUMERAL";	// Oficio Juridico para Base de Datos
		
		if ( cod_literal_c == "" ) {
			// Consultamos si el usuario es reincidente en la Infracción
			consultar_reincidencia();
			
		} else {
			// CONSULTAMOS SI TAMBIEN HAY LITERAL
			consultarInfoInfraLeyLit( cod_articulo_c, cod_numeral_c, cod_literal_c );
		}
	}
}


/*
 * PRUEBAS DE CARGA DE DATA DE XML A BD
 */

/*
 * Prueba de carga de todos los Datos del XML a BD
 */

function pruebaLeyNum() {
    db.transaction(function(tx) {
        tx.executeSql('SELECT * FROM smit_ley_num', [], resPruebaLeyNum);
    });
}


/*
 * Respuesta a la Prueba de carga de todos los Datos del XML a BD
 */

function resPruebaLeyNum(tx, rs) {
    alert("Cantidad: " + rs.rows.length + " -> 45");
}